package main

import (
	"fmt"
	"math"
)

func main() {
	//港港参加golang考试，和猪猪达成承诺
	//如果：
	//成绩为100分时，奖励一个亲亲
	//成绩为(80,90]，奖励一个拥抱
	//成绩为[60,80]，奖励一个牵手
	//其它时，什么奖励也没有
	//请从键盘输入港港的期末成绩，并加以判断

	//分析思路
	//1、score分数变量int
	//2、选择多分支流程控制
	//3、成绩从键盘输入fmt.Scanln
	var score int
	fmt.Println("请输入成绩:")
	fmt.Scanln(&score)
	//多分支判断
	if score == 100 {
		fmt.Println("亲亲")
	} else if score > 80 && score == 99 {
		fmt.Println("抱抱")
	} else if score >= 60 && score <= 80 {
		fmt.Println("牵手")
	} else {
		fmt.Println("没有奖励")
	}
	//使用陷阱：只会进入其中的一个分支
	//if里只能使用==不能使用=

	//求ax2+bx+c=0方程的根
	//分析思路
	//1、a,b,c是是哪个float64
	//2、使用到给出的数学公式
	//3、使用到多分支
	//4、使用math.Sqrt方法
	var a float64 = 3.0
	var b float64 = 100.0
	var c float64 = 6.0
	m := b*b - 4*a*c
	//多分支判断
	if m > 0 {
		x1 := (-b + math.Sqrt(m)) / 2 * a
		x2 := (-b - math.Sqrt(m)) / 2 * a
		fmt.Printf("x1=%v x2=%v\n", x1, x2)
	} else if m == 0 {
		x1 := (-b + math.Sqrt(m)) / 2 * a
		fmt.Printf("x1=%v\n", x1)
	} else {
		fmt.Println("无解...")
	}

}
